package com.sybil.spa.dao;

import com.sybil.spa.dominio.Paso;
import com.sybil.spa.dominio.PasoPK;
import java.util.List;
import org.hibernate.criterion.Restrictions;
import org.springframework.stereotype.Repository;

@Repository("pasoDAO")
public class PasoDAO extends AbstractDAO<Paso, PasoPK> {

   public PasoDAO() {
      super(Paso.class);
   }

   public Paso getPaso(PasoPK llave) {
      return obtener(llave);
   }

   public Paso getPaso(String claveFlujo, String clavePaso) {
      
      return obtener(new PasoPK(claveFlujo, clavePaso));
   }

   public List<Paso> getPasos() {
      return obtener();
   }

   public List<Paso> getPasos(String claveFlujo) {
      return obtener(Restrictions.eq("llave.claveFlujo", claveFlujo));
   }

   public void guardarPaso(Paso paso) {
      guardar(paso);
   }

   public void editarPaso(Paso paso) {
      editar(paso);
   }

   public void eliminarPaso(Paso paso) {
      eliminar(paso);
   }
}
